This invention relates to interactive entertainment systems, such as interactive television or interactive computing network systems, and to electronic program guides which operate in conjunction with these systems. More particularly, this invention relates to methods for using electronic programming guides to access supplemental hyperlink content which enables viewer interactivity with continuous video programs.
Television viewers are very familiar with printed programming schedules that appear in daily newspapers or weekly magazines, such as TV Guide(copyright). The printed program guide lists the various television shows in relation to their scheduled viewing time on a day-to-day basis.
Cable TV systems often include a channel with a video broadcast of the printed program guide. The cable channel is dedicated to displaying listings of programs available on the different available channels. The listings are commonly arranged in a grid. Each column of the grid represents a particular time slot, such as 4:00 p.m. to 4:30 p.m. Each row represents a particular broadcast or cable channel, such as ABC, PBS, or ESPN. The various scheduled programs or shows are arranged within the rows and columns, indicating the channels and times at which they can be found. The grid is continuously scrolled vertically so that a viewer can scan a continuously refreshing set of programs within three or four time slots.
Data regarding the available programs is typically received by a cable system as a plurality of data records. Each available program has a single corresponding data record indicating a variety of information about the program such as its channel, its starting and ending times, its title, names of starring actors, whether closed-captioning and stereo are available, and perhaps a brief description of the program. It is not difficult to format a grid such as described above from this type of data records. The grid is typically formatted once at the cable system""s headend and broadcast repeatedly and continuously to the thousands of homes served by the cable system.
Newer, interactive cable distribution systems feature electronic program guides (EPGs) which function somewhat similar to the broadcast program listing channels described above. Rather than scrolling automatically, however, an EPG allows a viewer to use a remote control device to scroll as desired both horizontally and vertically through a program grid. This functionality utilizes the two-way communications capabilities of interactive cable systems.
The EPG is typically implemented in software which runs on a set-top box (STB) connected between a TV and a cable system home entry line. When scrolling to a new column or row, the set-top box inserts the appropriate programming information into each new row or column. This information is either cached at the STB, or requested from the cable system""s headend.
Interactive systems permit Viewers to control what programs are shown on their TV and when. Movies-on-demand is one example of this interactive control. A viewer can peruse a list of available movies from a menu or the EPG, and then order a selected movie. The STB sends a request for the movie to the headend server. The movie is retrieved and transmitted to the requesting STB. Movies-on-demand thus enables viewers to shop, purchase, and watch a movie at their convenience, as opposed to being restricted to certain start times as is typical with conventional premium or pay-per-view channels.
Many industry and commercial experts expect interactive TV systems to evolve to the point of offering many other interactive services to the consumers. For instance, consumers will be able to use their TV to shop for groceries or other goods, conduct banking and other financial transactions, play games, or attend educational courses and take exams.
There is a rapidly expanding interest in online services provided over public networks to home or business computers. Most notably, the Internet is emerging as a means for supplying video, sound, pictures, text, and other multimedia rich resources to a user""s computer. Using the Internet, users can access a wide variety of resources that are maintained on many computers located around the world.
Resources available on the Internet are most commonly presented as hypertext. xe2x80x9cHypertext,xe2x80x9d also referred to as xe2x80x9chypermedia,xe2x80x9d is a metaphor for presenting information in which text, images, sounds, and actions become linked together in a complex, non-sequential web of associations that permit a user to browse through related topics, regardless of the presented order of the topics. Hypermedia content is widely used for navigation and information dissemination on the xe2x80x9cWorld-Wide Webxe2x80x9d (WWW or Web) of the Internet. An application program referred to as a xe2x80x9cWeb browserxe2x80x9d is normally used to retrieve and render hypermedia content from the WWW.
Hypermedia content is commonly organized as documents with embedded control information. The embedded control information includes formatting specifications, indicating how a document is to be rendered by the Web browser. In addition, such control information can include links or xe2x80x9chyperlinks,xe2x80x9d which are symbols or instructions telling the Web browser where to find other related WWW documents on the Internet. A hyperlink from one hypermedia topic to another is normally established by the author of a hypermedia document, although some applications allow users to insert hyperlinks to desired topics.
A hyperlink is typically rendered by a Web browser as a graphical icon or as highlighted keywords. A user xe2x80x9cactivatesxe2x80x9d or xe2x80x9cfollowsxe2x80x9d a hyperlink by clicking on or otherwise selecting the icon or highlighted keywords. Activating a link causes the Web browser to retrieve and render the document or resource that is targeted by the hyperlink.
Associated with a hyperlink""s icon or highlighted keywords is an underlying target specification. The target specification is set forth in the underlying hypermedia document, but is normally invisible to the user. The target specification unambiguously identifies a targeted document or resource, typically specifying the name of the computer on which the document resides and the complete file name of the document. In WWW documents, targets are specified using xe2x80x9cuniversal resource locatorsxe2x80x9d (URLs). A URL describes everything about a particular resource that a Web browser needs to know to request and render it. The URL describes the protocol a browser should use to retrieve the resource, the name of the computer it is on, and the path and file name of the resource.
The following is an example of a URL:
HTTP://www.microsoft.com/upgrades
The xe2x80x9chttp://xe2x80x9d portion of the URL describes the protocol. The letters xe2x80x9chttpxe2x80x9d stand for HyperText Transfer Protocol, the set of rules that a browser will follow to request a document and the remote server will follow to supply the document. The xe2x80x9cwww.microsoft.comxe2x80x9d portion of the URL is the name of the remote host computer which maintains the document. The last portion xe2x80x9c/upgradesxe2x80x9d is the path and file name of the document on the remote host computer.
Hypermedia content utilized by the WWW is commonly written using what is referred to as a xe2x80x9cmarkup language.xe2x80x9d xe2x80x9cSGMLxe2x80x9d (Standard Generalized Markup Language) is one such language, defined formally as xe2x80x9ca language for document representation that formalizes markup and frees it of system and processing dependencies.xe2x80x9d SGML is a language for describing the structure of documents and for describing a tagging scheme to delineate that structure within text.
For creating hypermedia content, WWW documents utilize a subset of SGML called xe2x80x9cHTMLxe2x80x9d (Hypertext Markup Language). An HTML textual document can be thought of as plain text that contains formatting instructions in the form of HTML markup codes or xe2x80x9ctags.xe2x80x9d Tags tell Web browsers how to render and print documents, and are also used to specify hyperlinks.
The following is a simple example of a portion of an HTML document containing a single hyperlink:
Microsoft has a Web page with the latest  less than A HREF=xe2x80x9cHTTP://www.microsoft.com/upgradesxe2x80x9d greater than  upgrades less than /A greater than  to its popular word processing program.
When rendered by a web browser, the word xe2x80x9cupgradesxe2x80x9d would appear highlighted and/or underlined to the user, and the text within the angled brackets would not appear at all, as follows:
Microsoft has a Web page with the latest upgrades to its popular word processing program.
By clicking on the highlighted keyword xe2x80x9cupgrades,xe2x80x9d the user can instruct the Web browser to activate the underlying URL. In this case, the underlying URL is to an HTTP (hypertext) document located at host computer xe2x80x9cwww.microsoft.com,xe2x80x9d having the file name xe2x80x9cupgrades.xe2x80x9d
The angled brackets in the example define hypertext tags. In most cases, tags occur in pairs: a start tag and an end tag. The start tag indicates where a particular formatting is to begin, and a corresponding end tag indicates where the formatting is to end. A start tag begins with a code (after the leading angled bracket) indicating a tag type. An end tag consists of that same code, preceded by a forward slash.
In the example above, the leading xe2x80x9cAxe2x80x9d in the start tag indicates that it is an xe2x80x9canchorxe2x80x9d tagxe2x80x94the type of tag that defines a hyperlink. The start tag contains a tag xe2x80x9cattribute,xe2x80x9d indicating a target specification:
HREF=xe2x80x9cHTTP://www.microsoft.com/upgradesxe2x80x9d.
In concept, the target of a hyperlink can be virtually any type of objectxe2x80x94including executable programs, text or multimedia documents, sound clips, audio segments, still images, computers, directories, and other hyperlinks. In WWW documents, hyperlink targets are most often files that can reside on any computers connected to the Internet. However, a hyperlink target can also be a particular location within a document, including the document that is currently being rendered.
Hypertext usage is not limited to the Internet. Various multimedia applications utilize hypertext to allow users to navigate through different pieces of information content. For instance, an encyclopedia program might use hyperlinks to provide cross-references to related articles within an electronic encyclopedia. The same program might also use hyperlinks to specify remote information resources such as WWW documents located on different computers.
Today, there is a convergence in some respects of the content available on traditional cable and broadcast TV and the content provided over the Internet. There is an increasing number of TV- and movie-related Web sites. For instance, computer users can access a CNN Web site for recent news in addition to, or in lieu of, tuning their televisions to the CNN channel. Computer users can browse through an ESPN Web site for sports information, or through a Web site from Universal Studios for facts on latest movie releases. Recently, Microsoft Corporation and NBC Studios formed a joint venture to produce a 24-hour news program with supporting Web site.
Despite the convergence of subject matter, the Internet and TV have remained somewhat separate, particularly in viewer""s minds. A viewer watches the programs on his/her TV and then, to access the Internet, switches to a computer to browse Web sites for any related content.
The inventors have developed a better way of integrating supplemental content, be it on the Internet or elsewhere, with conventional TV and movie programs.
This invention concerns integrating hyperlinks into an electronic programming guide (EPG) used in an interactive entertainment system. The system includes a program provider which distributes video content programs to multiple subscribers over a distribution network (e.g., cable, telephone, broadcast, etc.). Each subscriber has a user interface unit in the form of a set-top box or computing unit which receives the digital video program and converts it for display on a television or other display unit.
The user interface unit has a processor and memory. The EPG resides in the memory and is executable on the processor to organize programming information that is descriptive of programs supplied over the interactive entertainment system. The EPG supports a user interface (UI) which visually correlates programs titles to scheduled viewing times. One UI arrangement consists of a grid having program tiles arranged horizontally beside corresponding channel tiles and vertically beneath a continuous time line that is delineated by periodic time increments, such as half-hour intervals.
A hyperlink browser also resides in memory and is executable on the processor. One or more hyperlinks, which reference target resources containing interactive supplemental content related to the programs, are displayed within the EPG UI. The hyperlinks can be placed in the program tiles, channel tiles, or description area, and can be situated alone or embedded within other text. When a viewer activates a hyperlink from the EPG UI, the user interface unit launches the browser to activate the target resource specified by the hyperlink. The data retrieved from the target resource is then displayed on the display unit.
By integrating the hyperlinks within the EPG UI, the viewer can readily identify supplemental information to the programs and access that information directly from the EPG. The viewer no longer needs to remember that there may be a Web site associated with a particular program or channel, nor is the viewer relegated to surfing the Internet from a separate machine to find any related content.
According to another aspect of this invention, the user interface unit employs an operating system which supports drag-and-drop functionality. While reviewing available programs in the EPG, the viewer can drag a particular program or channel label from its location within the EPG UI and drop the label at another location on the display unit. The operating system associates an instruction with the label that will execute in response to activation of the label to tune the visual display unit to the program or channel represented by the particular label. In this manner, the viewer can simply activate the label to return to a particular channel or program, even if the EPG is not active. If the program is not yet playing, the shortcut might further include instructions to activate any related target resource, such as an associated Web page, or to initiate procedures to record the program when it begins playing.